package com.miyu.system.service.rule;

import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.miyu.system.pojo.system.SysRule;
import com.miyu.system.pojo.system.SysRuleModel;
import org.springframework.data.domain.Page;

/**
 * 系统规则服务
 * @author miyu
 */
public interface SysRuleService {
    /**
     * 系统规则编辑
     * @param sysRule 系统规则
     * @return {@link SysRule}
     */
    SysRule sysRuleEdit(SysRule sysRule);

    /**
     * 查询系统规则
     *
     * @param param 参数
     * @return {@link JSONArray}
     */
    Page<SysRule> querySysRule(JSONObject param);

    /**
     * ▽系统规则
     * @param params 参数个数
     * @return {@link JSONObject}
     */
    JSONObject delSysRule(JSONArray params);

    /**
     * 获取系统规则通过id
     * @param ruleId 规则id
     * @return {@link SysRule}
     */
    SysRule getSysRuleById(Integer ruleId);

    /**
     * 查询规则模型通过密码
     * @param modelCode 型号代码
     * @return SysRuleModel
     */
    SysRuleModel queryRuleModelByCode(String modelCode);
}
